import subprocess


def stop_locust_terminals():
    # 1. 先终止所有 Locust 进程（核心，进程结束后终端会自动关闭或可被强制关闭）fff
    subprocess.run(['taskkill', '/F', '/IM', 'locust.exe'], capture_output=True, text=True)

    # 2. 若仍有残留终端窗口，强制关闭所有运行 Locust 的 cmd 窗口
    # （通过窗口标题筛选，假设启动时终端标题含"locust"，可根据实际调整）
    subprocess.run(
        ['taskkill', '/F', '/IM', 'cmd.exe'],
        capture_output=True,
        text=True
    )


if __name__ == '__main__':
    # 调用函数关闭
    stop_locust_terminals()
    print("已关闭所有 Locust 进程及相关终端窗口")